package com.java.permission.common.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.java.permission.common.dao.entity.SysUser;
import com.java.permission.common.dto.SysUserDto;
import com.java.permission.common.params.PageParams;

import java.util.List;

/**
 * @author hu
 * @version 1.0
 * @date 2020/6/12 16:25
 * @description
 */
public interface SysUserService {
    /**
     * 保存用户
     * @param sysUserDto
     * @param operUserId
     */
    void save (SysUserDto sysUserDto, String operUserId);

    /**
     * 参数校验
     * @param sysUserDto
     */
    void validUserParams(SysUserDto sysUserDto);

    /**
     * 查询所有正常用户
     * @return
     */
    List<SysUser> findValidAll();

    /**
     * 分页查询用户
     * @param pageParams
     * @return
     */
    IPage<SysUser> findValidPageBy(PageParams pageParams);

    /**
     * 修改用户
     * @param sysUserDto
     * @param operUserId
     */
    void edit(SysUserDto sysUserDto, String operUserId);

    /**
     * 根据 id查询用户详情
     * @param id
     * @return
     */
    SysUser findById(String id);

    /**
     * 根据用户Id 集合查询用户
     * @param asList
     * @return
     */
    List<SysUser> findByUserIdIn(List<String> asList);
}
